class Foo {
  constructor(name: string) {}
}

class Foo {
  constructor(...name: string[]) {}
}

class Foo {
  constructor(name: string, age: number) {}
}

class Foo {
  constructor(name: string) {}
  constructor(name: string, age?: number) {}
}

class Foo {
  constructor(private ...name: string[]) {}
}

class Foo {
  constructor(private [test]: [string]) {}
}

export class Foo {
  public name: string;

  public constructor(name: string) {
    this.name = name;
  }
}
